package com.heatup.apt.common.dao;

import com.baomidou.mybatisplus.mapper.*;
import com.heatup.apt.model.coupon.CouponInfo;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Component;

import java.util.List;
import java.util.Map;

@Component
public interface CouponInfoMapper extends AutoMapper<CouponInfo> {


    /**
     * 根据code查询优惠券信息
     * @param code
     * @return
     */
    CouponInfo selectByCouponCode(@Param("code") String code);


    /**
     * 优惠券分页查询
     *
     * @param paramsMap
     * @return
     */
    List<CouponInfo> queryCouponList(Map<String, Object> paramsMap);

    /**
     * 优惠券分页计数
     *
     * @param paramsMap
     * @return
     */
    int queryCouponCount(Map<String, Object> paramsMap);

    /**
     * 查询优惠券
     *
     * @param id 主键
     * @return
     */
    CouponInfo queryById(Integer id);


    /**
     * 查询优惠券新增(审核)列表
     *
     * @param paramsMap
     * @return
     */
    List<CouponInfo> queryCouponCheckList(Map<String, Object> paramsMap);

    /**
     * 查询优惠券新增(审核)计数
     *
     * @param paramsMap
     * @return
     */
    int queryCouponCheckCount(Map<String, Object> paramsMap);

    /**
     * 查询优惠券
     *
     * @param couponCode 券码
     * @return
     */
    CouponInfo queryByName(String couponCode);
}